#include<bits/stdc++.h>
using namespace std;
const int maxn=1e5+10;
int n,cnt;
int a[maxn];
bool vis[maxn];
bool find(int k){
    int ans=-1;
    int l=1,r=n;
    while(l<=r){
        int mid=l+r>>1;
        if(a[mid]<=k){
            l=mid+1;
        }
        if(a[mid]>k) {
            r=mid-1;
            ans=mid;
        }
    }
    if(ans==-1)return false;
        int ll=ans,rr=n;
        int temp_ans=-1;
        while(ll<=rr){
            int m=ll+rr>>1;
            if(!vis[m]){
                temp_ans=m;
                rr=m-1;
            }
            else ll=m+1;
        }
        if(temp_ans==-1)return false;
        else {
            vis[temp_ans]=1;
            return true;
        }
}
int main(){
    freopen("duel.in","r",stdin);
    freopen("duel.out","w",stdout);
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    cin>>n;
    cnt=n;
    for(int i=1;i<=n;i++)cin>>a[i];
    sort(a+1,a+n+1);
    for(int i=1;i<=n;i++){
        if(find(a[i])){
            cnt--;
        }
    }
    cout<<cnt<<'\n';
    return 0;
}
/*
10
136 136 136 2417 136 136 2417 136 136 136
*/
